package org.sirmupadbapi.controller;

import org.sirmupadbapi.beans.Contribuyentes;
import java.sql.Date; 
import java.io.Serializable;
import java.util.List;
import java.util.ArrayList;
import java.util.*;
import java.util.HashMap;
import java.util.Map;
import org.sirmupadbapi.persistencia.ContribuyentesPersistencia;
import org.sirmupadbapi.generales.Mensajeria;


/**
*
*  @author
*/

public class ContribuyentesController implements Serializable {
private static final long serialVersionUID = 1L;
private boolean withRelation= true;
public static Exception excepcion;



private List<Contribuyentes> contribuyenteslist;

private Contribuyentes selectedcontribuyentes;



public boolean isWithRelation() {
    return withRelation;
}
public  void setWithRelation(boolean withRelation) {
    this.withRelation = withRelation;
}
public ContribuyentesController(){
}

public Contribuyentes getSelectedContribuyentes() {
 return selectedcontribuyentes;
}

 public void setSelectedContribuyentes(Contribuyentes selectedcontribuyentes) {
 this.selectedcontribuyentes = selectedcontribuyentes;
}


public List<Contribuyentes> getContribuyenteslist() {
return contribuyenteslist;
}

 public void setContribuyenteslist(List<Contribuyentes> contribuyenteslist) {
this.contribuyenteslist = contribuyenteslist;
}
/*
*  getMensaje()
*   devuelve el mensaje encontrado...
*/
public String getMensaje() {
   String lexcepcion = excepcion.toString();
   if (lexcepcion.indexOf(":") != -1) {
       lexcepcion = lexcepcion.substring(lexcepcion.indexOf(":") + 1);
   }
  return lexcepcion;
}


/**
*
* insert()
*/

public boolean insert (Contribuyentes contribuyentes) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/sirmupadbapi/properties/mensajes");
   if (validate(contribuyentes)) {
     if (findByPrimaryKey(contribuyentes)==null) {
         if (!ContribuyentesPersistencia.insert(contribuyentes)) {
                 excepcion = ContribuyentesPersistencia.excepcion;
          }
          else{
             return true;
           }
       }else{
               excepcion=new Exception(bundle.getString("msg.recordexists"));
            return false;
       }
    }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"insert()");
  }
  return false;
}


/**
*
* update()
*/

public boolean update (Contribuyentes contribuyentes) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/sirmupadbapi/properties/mensajes");
   if (validate(contribuyentes)) {
 if (ContribuyentesPersistencia.exists(contribuyentes)) {
     if (!ContribuyentesPersistencia.update(contribuyentes)) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }
     else{
            return true;
     }
   }else{
               excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"update()");
  }
  return false;
}


/**
*
* update(String sqlupdate)
*/

public boolean update(String sqlupdate) {
try{
     if (!ContribuyentesPersistencia.update(sqlupdate)) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }
     else{
            return true;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"update()");
  }
  return false;
}


/**
*
* updatePrimaryKey()
*/

public boolean updatePrimaryKey (Contribuyentes contribuyentes_old , Contribuyentes contribuyentes) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/sirmupadbapi/properties/mensajes");
   if (validate(contribuyentes_old)) {
 if (ContribuyentesPersistencia.exists(contribuyentes_old)) {
     if (!ContribuyentesPersistencia.updatePrimaryKey(contribuyentes_old,contribuyentes)) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }
     else{
            return true;
     }
   }else{
               excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"updatePrimaryKey()");
  }
  return false;
}


/**
*
* delete()
*/

public boolean delete (Contribuyentes contribuyentes) {
try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/sirmupadbapi/properties/mensajes");
 if (findByPrimaryKey(contribuyentes)!=null) {
     if (!ContribuyentesPersistencia.delete(contribuyentes)) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }else{
            return true;
           }
   }else{
            excepcion=new Exception(bundle.getString("msg.nofoundprimarykey"));
            return false;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"delete()");
  }
  return false;
}


/**
*
* delete(String sqldelete)
*/

public boolean delete(String sqldelete) {
try{
     if (!ContribuyentesPersistencia.delete(sqldelete)) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }else{
            return true;
           }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"delete()");
  }
  return false;
}


/**
*
* deleteAll()
*/

public boolean deleteAll() {
try{
     if (!ContribuyentesPersistencia.deleteAll()) {
                excepcion = ContribuyentesPersistencia.excepcion;
     }
     else{
            return true;
     }
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"deleteAll()");
  }
  return false;
}


/**
*
* exists()
*/



public boolean exists(Contribuyentes contribuyentes) {
try{
   return ContribuyentesPersistencia.exists(contribuyentes);
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"Exists()");
  }
 return false;
}


/**
*
* findPrimaryKey()
*/



public Contribuyentes findByPrimaryKey(Contribuyentes contribuyentes) {
try{
    this.selectedcontribuyentes = ContribuyentesPersistencia.findByPrimaryKey(contribuyentes);
    return selectedcontribuyentes;
  }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByPrimaryKey()");
  }
 return null;
}


/**
*
* findByCEDULA()
*/

public boolean findByCEDULA(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByCEDULA(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByCEDULA()");
  }
  return false;
  }


/**
*
* findByCONTRIBUYENTE()
*/

public boolean findByCONTRIBUYENTE(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByCONTRIBUYENTE(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByCONTRIBUYENTE()");
  }
  return false;
  }


/**
*
* findByIDSEGUROSOCIAL()
*/

public boolean findByIDSEGUROSOCIAL(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDSEGUROSOCIAL(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDSEGUROSOCIAL()");
  }
  return false;
  }


/**
*
* findByOCUPACION()
*/

public boolean findByOCUPACION(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByOCUPACION(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByOCUPACION()");
  }
  return false;
  }


/**
*
* findByNACIONALIDAD()
*/

public boolean findByNACIONALIDAD(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByNACIONALIDAD(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByNACIONALIDAD()");
  }
  return false;
  }


/**
*
* findByIDMUNICIPIO()
*/

public boolean findByIDMUNICIPIO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDMUNICIPIO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDMUNICIPIO()");
  }
  return false;
  }


/**
*
* findByIDCORREGIMIENTO()
*/

public boolean findByIDCORREGIMIENTO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDCORREGIMIENTO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDCORREGIMIENTO()");
  }
  return false;
  }


/**
*
* findByDOMICILIO()
*/

public boolean findByDOMICILIO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByDOMICILIO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByDOMICILIO()");
  }
  return false;
  }


/**
*
* findByCASA()
*/

public boolean findByCASA(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByCASA(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByCASA()");
  }
  return false;
  }


/**
*
* findByTELEFONO()
*/

public boolean findByTELEFONO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByTELEFONO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByTELEFONO()");
  }
  return false;
  }


/**
*
* findByAPARTADOPOSTAL()
*/

public boolean findByAPARTADOPOSTAL(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByAPARTADOPOSTAL(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByAPARTADOPOSTAL()");
  }
  return false;
  }


/**
*
* findByEMAIL()
*/

public boolean findByEMAIL(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByEMAIL(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByEMAIL()");
  }
  return false;
  }


/**
*
* findByOBSERVACION()
*/

public boolean findByOBSERVACION(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByOBSERVACION(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByOBSERVACION()");
  }
  return false;
  }


/**
*
* findByIDMUNICIPIOVIVE()
*/

public boolean findByIDMUNICIPIOVIVE(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDMUNICIPIOVIVE(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDMUNICIPIOVIVE()");
  }
  return false;
  }


/**
*
* findByIDCORREGIMIENTOVIVE()
*/

public boolean findByIDCORREGIMIENTOVIVE(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDCORREGIMIENTOVIVE(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDCORREGIMIENTOVIVE()");
  }
  return false;
  }


/**
*
* findByACTIVO()
*/

public boolean findByACTIVO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByACTIVO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByACTIVO()");
  }
  return false;
  }


/**
*
* findByFECHA()
*/

public boolean findByFECHA(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByFECHA(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByFECHA()");
  }
  return false;
  }


/**
*
* findByIDUSUARIO()
*/

public boolean findByIDUSUARIO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByIDUSUARIO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByIDUSUARIO()");
  }
  return false;
  }


/**
*
* findByFOTO()
*/

public boolean findByFOTO(Contribuyentes contribuyentes) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.findByFOTO(contribuyentes,withRelation) ;
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"findByFOTO()");
  }
  return false;
  }


/**
*
* locateByParameters()
*/

public boolean locateByParameters(Map parametros) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.locateByParameters(parametros,withRelation);
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"locateByParameters()");
  }
  return false;
}


/**
*
* Func(String funcion, String campo)
*/

public Double func(String funcion, String campo) {
  try{
     return ContribuyentesPersistencia.func(funcion,campo);
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"func()");
  }
  return 0.0;
}


/**
*
* Double func(String funcion, String campo, String where)
*/

public Double func(String funcion, String campo,String where) {
  try{
     return ContribuyentesPersistencia.func(funcion,campo,where);
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"Func()");
  }
  return 0.0;
}


/**
*
* count()
*/

public Integer count() {
  try{
     int x =ContribuyentesPersistencia.count();
    return x;
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"count()");
  }
 return 0;
}


/**
*
* count(String sql)
*/

public Integer count(String sqlquery) {
  try{
     int x =ContribuyentesPersistencia.count(sqlquery);
    return x;
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"count()");
  }
 return 0;
}


/**
*
* query()
*/

public boolean query(String query) {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     contribuyenteslist = ContribuyentesPersistencia.query(query,withRelation);
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"query()");
  }
  return false;
}


/**
*
* selectAll()
*/



public boolean selectAll() {
  try{
     if(contribuyenteslist != null){
        contribuyenteslist.removeAll(contribuyenteslist);
     }
     Map<String, String> parametros = new HashMap<String, String>();
     contribuyenteslist = ContribuyentesPersistencia.getListRecords(parametros,withRelation);
     if (contribuyenteslist== null) {
                excepcion = ContribuyentesPersistencia.excepcion;
       }
       else{
            return true;
            }
    }catch(Exception ex){
     Mensajeria.MensajeError( ex ,"SelectAll()");
  }
            return false;
}


public boolean validate(Contribuyentes contribuyentes) {
 try{
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("org/sirmupadbapi/properties/mensajes");

if (contribuyentes.getCEDULA() == null || contribuyentes.getCEDULA().equals("")){
   excepcion=new Exception(bundle.getString("CEDULA")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
if (contribuyentes.getIDMUNICIPIO() == null || contribuyentes.getIDMUNICIPIO().equals("")){
   excepcion=new Exception(bundle.getString("IDMUNICIPIO")  + "  " + bundle.getString("msg.nonulo"));
  return false;
}
  return true;
 }catch(Exception ex){
   Mensajeria.MensajeError(ex, "validate()");
  return false;

  }
}


}
